package com.wwf.sqlsession;

import java.beans.IntrospectionException;
import java.lang.reflect.InvocationTargetException;
import java.sql.SQLException;
import java.util.List;

public interface SqlSession {
    <E> List<E> selectList(String statementid,Object ... parameters) throws IllegalAccessException, IntrospectionException, InstantiationException, NoSuchFieldException, SQLException, InvocationTargetException, ClassNotFoundException;
    <T> T  selectOne(String statementid,Object ... parameters) throws IllegalAccessException, ClassNotFoundException, IntrospectionException, InstantiationException, SQLException, InvocationTargetException, NoSuchFieldException;
    <T> T getMapper(Class<?> mapperClass);
    int insert(String statementid, Object ... parameters) throws ClassNotFoundException, SQLException, IllegalAccessException, NoSuchFieldException;
    int update(String statementid,Object ... parameters) throws ClassNotFoundException, SQLException, IllegalAccessException, NoSuchFieldException;
    int delete(String statementid,Object ... parameters) throws ClassNotFoundException, SQLException, IllegalAccessException, NoSuchFieldException;
}
